البته برای این منظور سیستمها باید دادهها را در یک بازه زمانی منظم بهطور خودکار یا هنگامی که رویدادی به وجود میآید تولید و در قالب گزارشی آماده استفاده در اختیار مدیران شبکه قرار دهند. این دادهها در حالتهای زیر راهگشا هستند:
- بهطور فعال از مشکلات احتمالی در سیستم آگاه شویم.
- به سرعت مشکلی که قبلاً اتفاق داده است را تجزیه و تحلیل و اصلاح کنید.
- عملکرد کلی سیستم را ارزیابی کرده و از صحت سلامت محیط و شبکه اطمینان حاصل کنید.
بنابراین، دریافت این دادهها برای حصول اطمینان از کارکرد درست سیستمها و برنامههای کاربردی مهم است. کاربرد اصلی نظارت، شناسایی به موقع منبع بروز یک مشکل است. در طول یک قطعی، زمان بسیار مهم است، زیرا باید همه چیز به سرعت به حالت اولیه باز گردد و زمان زیادی برای تجزیه و تحلیل دقیق وجود ندارد. برای حل این مشکل، سیستمهای مانیتورینگ باید مجموعه دادههای عظیمی از اطلاعات پیچیده را پردازش کرده و بتوانند اطلاعات را از نقاط دادهای حساس جمعآوری کنند. بر اساس این تجزیه و تحلیل، اپراتورها میتوانند به تک تک مشکلات بپردازند و به سرعت آنها را اصلاح کنند.
تکنیکهای مورد استفاده در نظارت متنوع هستند و در زمینههای پردازش دادههای بلادرنگ و تجزیه و تحلیل دادههای آماری به راحتی قابل استفاده هستند. مصورسازی دادهها نیز نقش مهمی در این زمینه دارند، زیرا دادههای پردازش شده باید معنادار و قابل خواندن باشند. راههای زیادی برای تفسیر دادهها وجود دارد و دادههای نظارتی دیدگاههای مختلفی در مورد مسائل اساسی از یک مجموعه داده به شما ارائه میدهند.
دوآپس، نقشها و پرسونای کاربری
قبل از پیدایش دوآپس، توسعهدهندگان معمولاً دغدغه خاصی در ارتباط با عملکرد کدهای خود نداشتند و در زمان کوتاهی کدها را در اختیار تیم عملیات قرار میداند. تیم عملیات که مسئول پیادهسازی و راهاندازی برنامه بود، تنها زمانی به سراغ توسعهدهندگان میرفت که کدها با مشکل روبرو میشدند. اصلیترین مشکلی که در این زمینه وجود داشت، عملکرد ضعیف برنامهها و اجرای نه چندان جالب برنامههای کاربردی و به ویژه ابرمحور بود. دوآپس به عنوان پاسخی برای حل این تضادهای اولویتهای نادرست بین دو گروه پدید آمد و مجموعهای از شیوههای جدید را برای پر کردن شکاف بین تیمهای توسعه نرمافزار و عملیات نرمافزار پیشنهاد کرد. تکامل دوآپس را در تصویر زیر مشاهده میکنید.
برای همسویی با اصول دوآپس و متدولوژی چابک (Agile)، شرکتها نقشهای خاصی در سازمان خود ایجاد کردند. یکی از این نقشها که در گوگل تکامل یافته است، مهندسان قابلیت اطمینان سایت (SREs) سرنام Site reliability engineering است که مسئول حفظ و راهاندازی سیستمها هستند. SREها سیستمهای تحت نظارت خود را برای دستیابی به اهداف از پیش تعریف شده در قرارداد کیفیت سطح خدمات (SLO) بررسی میکنند. بهطور کلی این مهندسان که نقش مهمی در مشاغل ابرمحور دارند باید اطلاعاتی در مورد رفتار سیستم، شناسایی روند استفاده و عملکرد سیستم و اطلاعرسانی و هشدار در مورد موارد پرت و ناهنجاری ارایه کنند.
تشخیص مشکل
SREها مسئولیت حصول اطمینان سیستم را بر عهده دارند و بنابراین باید درک کاملی از خدمات در حال اجرا و نحوه نظارت بر آنها داشته باشند. اگر SREها ابزارها و اطلاعات مناسبی نداشته باشند، حتی پس از شناسایی رفتار غیرعادی، نمیتوانند به سرعت اطلاعات مهم را پیدا کنند. شکل زیر أصول دوآپس و وظایف مهندسان SRE را نشان میدهد.
مانیتورینگ دامنهها
محیطهای ابری از نظر وسعت و مکانیسمهایی که با آن میتوان آنها را پایش کرد متفاوت هستند. نقشهای مختلف در یک سازمان مسئول نظارت بر حوزههای مختلف مرتبط با یک برنامه کاربردی هستند و بنابراین برای هر یک از آنها اولویتهای مختلف در نظر گرفته میشود. بهطور کلی در شرکتی که خدمات ابری را ارایه میکند این پنج مورد قابل مشاهده است:
بهتر است، همانگونه که در شکل بالا مشاهده میکنید، این حوزهها را از لایه زیرساخت ابری بررسی کنیم و به بالای هرم نظارت برسیم.
- زیرساختهای ابری: مدیران ابر، مدیران سیستم و تیمهای عملیاتی علاقهمند به استفاده از منابع میزبانی شده در ابر هستند. این منابع میتوانند پردازنده مرکزی، حافظه، شبکه یا فضای ذخیرهسازی باشد. آنها الگوهای استفاده در طول زمان را بررسی میکنند تا دریابند که آیا منابع بیش از حد استفاده میشود یا خیر. آنها همچنین علاقهمندند بدانند در چه زمانها و تاریخهایی فشار سنگینی به منابع وارد میشوند و چه عاملی باعث این افزایش فشار میشود.
- کانتینرها: SREها وظیفه دارند از در دسترس بودن کانتینرها اطمینان حاصل کنند. SREها کانتینرها را برای پارامترهای استفاده خاص و همچنین فرآیندهای در حال اجرا در داخل کانتینرها بررسی کرده و زیر نظر میگیرند. اطلاعاتی که توسط مهندسان بهدست میآید کمک میکند تا هر بخش از زیرساخت ابری که نیازمند تغییر است را ویرایش کرد و حتا از رویکردهایی مثل مکانیزم صفبندی برای حل مشکل فشار کاری بیش از اندازه به سیستمها استفاده کرد تا اطمینان حاصل شود که شرکت مجبور نیست برای پاسخگویی به درخواستها از رویکردهایی مثل محدود کردن دسترسی به منابع استفاده کند. برخی از شاخصها میتوانند درصد آپتایم کانتینر، تعداد درخواستها در صف یا میانگین درصد زمانی که یک سرویس در حال خدمترسانی است را شامل شوند. عملکرد کانتینر یک فعالیت مجزا از سایر مولفهها نیست، به همین دلیل در پیگیری عملکرد زیرساخت ابری که میزبان کانتینرها و برنامههایی که اجرا میکنند این نظارت باید انجام شود.
- خدمات: به معنای انتزاعی کردن یک برنامه کاربردی است که بخشی از یک میکروسرویس را تشکیل میدهد و در کانتینرهایی اجرا میشود که امکان پیگیری وضعیت آنها در چند خوشه وجود دارد. سرویسهای پیگیری به منظور حصول اطمینان از سلامت و عملکرد سیستم و مولفههای برنامههای کاربردی و بررسی زمان تاخیر برنامه استفاده میشوند. سرویسها به کلاینتها اجازه میدهد خدمات موردنیاز خود را به سرعت پیدا کنند که بهنام کشف سرویس (service discovery) از آن نام برده میشود. فرآیند توزیع درخواستهای دریافتی در مجموعهای از نمونهها، مسیریابی پویا نامیده میشود.
- برنامههای کاربردی: توسعهدهندگان و مدیران دوآپس بیشتر به زمان پاسخدهی و نرخ شکست اهمیت میدهند که مرتبط با یک سرویس واحد یک یک برنامه کامل هستند. این افراد نگران نحوه پاسخگویی پایگاه داده، تعداد پرسوجوهایی که در یک دقیقه به آنها پاسخ میدهند، تغییر استفاده از حافظه پشته در طول زمان و موارد این چنینی هستند. این اطلاعات به توسعهدهندگان کمک میکند تا به طور مداوم برنامه خود را در طول زمان بهبود بخشند و در نتیجه تجربه کاربری بهتری داشته باشند.
- تجربه کاربری: تجزیه و تحلیل وب یک کار تخصصی برای نظارت بر رفتار کاربران به منظور درک نحوه تعامل کاربران با برنامه، علاقهمندی آنها و نحوه استفاده از خدمات ارائه شده توسط برنامه است. در این زمینه نظارت به معنای پیگیری مواردی همچون لینکها و عناصری است که کاربران روی آنها کلیک میکنند. برای این منظور توسعهدهندگان از فایلهای گزارش وبسرور استفاده میکنند. جمعآوری گزارشهای این چنینی به درک بهتر رفتار کاربر کرده و اجازه میدهد متخصصان به شکل دقیقی کمپینهای بازاریابی دیجیتال و کمپینهای تبلیغاتی هدفمند را پیادهسازی کنند. شرکتها به اطلاعاتی مانند میانگین زمانی که هر کاربر در برنامه وب/موبایل خود وقت میگذراند و تعداد کاربران جدید در مقابل کاربران بازگشتی علاقهمند هستند. دادههای تجربه کاربری میتواند شامل زمان بارگذاری صفحه، اطلاعات مربوط به مشکلات بارگذاری در دستگاههای همراه، خطاهای جاوا اسکریپت و موارد مشابه باشد. نظارت مصنوعی (Synthetic) یکی دیگر از تکنیکهای محبوب برای نظارت بر برنامهها با شبیهسازی رفتار کاربر در داخل برنامه است. تجربه کاربری تنها عامل مهمی در رضایت مشتری است، بلکه در بهبود عملکرد کسبوکار نتایج مثبت درخشانی دارد.
- شاخصهای کلیدی عملکرد (KPI): در گذشته، توسعهدهندگان عمدتا توسعه فناوری و تیم عملیاتی وظیفه نظارت بر آپتایم بودن برنامهها را برعهده داشت و هیچکدام نقشی در بهبود فعالیتهای تجاری نداشتند. با این حال، با ورود دوآپس، متخصصان بیشتری روی بهبود فعالیتهای تجاری متمرکز شدند، زیرا توجه به فعالیتهای تجاری کمک میکند قابلیتها و ویژگیهای جدیدی به مجموعه اضافه شوند و مهمتر آنکه موفقیت یا شکست برخی از برنامههای تجاری منوط به ارزیابی فعالیتهای تجاری است. رویکرد فوق میتواند به نوآوریهای سازمانی تبدیل شده و رونق تجاری بیشتر سازمان کمک کند. برای این منظور مهم است که شاخصهای کلیدی عملکرد (KPI) کسب و کار به عنوان یک نقطه بازرسی دقیق برای پیگیری این موضوع که آیا برنامههای شما ارزشی برای مشتریان دارند یا خیر مورد توجه قرار گیرند. KPI میتواند شامل ارزیابی وضعیت برنامههای سیار، تجربه کاربران از ورود به سیستم، نحوه خرید و حتا کلیک روی تبلیغات باشد که همگی موارد مهمی در رونق تجاری بهشمار میروند.
به این مطلب چند ستاره میدهید؟(امتیاز: 4.5 - رای: 1)
- منبع: ماهنامه شبکه
- نویسنده: حمیدرضا تائبی